let a = 1;
let b = '2';
let c = [1, 2, 3];
let d = {id: 1, name: 's1'};
let f = 1.1;
let g = true;
let h;
let a1 = null;

showDateType();

/**
 * 功能:
 *      js的数据类型.
 * 输出:
 *      number
 *      string
 *      object
 *      object
 *      number
 *      boolean
 *      undefined undefined
 *      object null
 *      function
 * 说明:
 *      1. 可以发现, java中会细分float, int型, 但是在js中1和1.1都是number类型.
 *      2. 在 JavaScript 中，没有值的变量，其值是 undefined。typeof 也返回 undefined。
 *      3. 在 JavaScript 中，null 是 "nothing"。它被看做不存在的事物。
 *          - 不幸的是，在 JavaScript 中，null 的数据类型是对象。
 *          - 您可以把 null 在 JavaScript 中是对象理解为一个 bug。它本应是 null。
 *      4. 函数也可以用typeof关键字判断类型;
 *      5. typeof 运算符把数组返回为 "object"，因为在 JavaScript 中数组即对象。
 */
function showDateType() {
    console.log(typeof a);
    console.log(typeof b);
    console.log(typeof c);
    console.log(typeof d);
    console.log(typeof f);
    console.log(typeof g);
    console.log(typeof h, h);
    console.log(typeof a1, a1);
    console.log(typeof showDateType);
}